今天來做個人用戶頁面!
index頁面點擊user-> url 傳送 careers/{name_id}
->到達用戶頁面
記得昨天我們loop了全部用戶吧?
用name_id
當連結!
index.blade.php
@foreach($users as $user)
<a href="careers/{{ $user['name_id'] }}">
@endforeach
用使用HomeController的showUserPage
web.php
use App\Http\Controllers\HomeController;
Route::get('/careers/{id}', [HomeController::class, 'showUserPage']);
在Laravel: 3招把DB資料傳到View+Controller-Day15
提到的Controller,方便我們處理較複雜的邏輯。
在routes設定的{id}變數,就可以直接取用,從DB找到想要的列,
再把資料傳進去。
從CareerUser裡找到name_id相同的列。
<?php
namespace App\Http\Controllers;
use App\Models\CareerUser;
use Illuminate\Support\Facades\DB;
use Illuminate\View\View;
class HomeController extends Controller
{
public function showUserPage(): View {
$userIdRow = DB::table('career_users')->where('name_id', $id)->get();
return view('careers', ['user' => $userIdRow[0]]);
}
}
在views創建一個careers.blade.php views>careers.blade.php
就可以直接取用我們的變數囉
我的名字是: {{ $user }}